#ifndef CALQUE_H
#define CALQUE_H

#include <QDockWidget>
#include <QPixmap>
#include <QList>

#include "ui_calque.h"
#include "minicalque.h"

class DrawingArea;

class Calque: public QWidget{
    Q_OBJECT
    public:
        //************************************************************* Constructor
        Calque(QDockWidget *dockCalques);
        //************************************************************* Creation of miniCalque
        void updateCalque(DrawingArea* drawingArea);
        void createContentOfMiniCalque(MiniCalque* miniCalque, Layer* layer);
        void razCalque();
        //************************************************************* Variables
        UiCalques::CalquesClass* uiCalques;
        QWidget* contentDockWidgetCalques;
        std::list <QWidget*> listObjectInMiniCalque;
        DrawingArea* drawingCalque;

    public slots:
        void changeValeurOpacite();
        void nouveauCalque();
        void deleteCalque();
        void fusionUnion();
        void fusionAdapte();
        void fusionIntersection();
};


#endif // CALQUE_H
